import jwt from 'jsonwebtoken'
// 生成token
const jwtKey = '*^_^*' // token生成的密匙，根据自己需求定义

const jwtSign = (data: any) => { // token生成函数，有效时间为一个小时
    const token = jwt.sign(data, jwtKey, { expiresIn: 60 * 60 * 24 * 30 })
    return token
}

const jwtCheck = (req: any) => { // token验证函数
    let token = ""
    if (req.headers.token || req.query.token) {
        token = req.headers.token || req.query.token
    } else {
        return false
    }
    let isLogin = false
    jwt.verify(token, jwtKey, (err: any, data) => {
        if (err) {
            isLogin = false
        } else {
            isLogin = true
            req.jwtInfo = data
        }
    })
    return isLogin
}

export {
    jwtSign,
    jwtCheck
}
